From f43b831398596831d60636438df1e0eda190a15c Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 23 Feb 2004 00:53:05 +0000 Subject: [PATCH] Add notification, and avoid excessive relayouting. Mon Feb 23 01:56:09 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add notification, and avoid excessive relayouting. --- ChangeLog | 7 +++++++ ChangeLog.pre-2-10 | 7 +++++++ ChangeLog.pre-2-4 | 7 +++++++ ChangeLog.pre-2-6 | 7 +++++++ ChangeLog.pre-2-8 | 7 +++++++ gtk/gtkcombobox.c | 31 +++++++++++++++++++++++-------- 6 files changed, 58 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 29e65a00bd..3fde72f9b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Mon Feb 23 01:56:09 2004 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add + notification, and avoid excessive relayouting. + Mon Feb 23 00:38:21 2004 Matthias Clasen Fix bug 134982, reported by Morten Welinder: diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 29e65a00bd..3fde72f9b8 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +Mon Feb 23 01:56:09 2004 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add + notification, and avoid excessive relayouting. + Mon Feb 23 00:38:21 2004 Matthias Clasen Fix bug 134982, reported by Morten Welinder: diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 29e65a00bd..3fde72f9b8 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +Mon Feb 23 01:56:09 2004 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add + notification, and avoid excessive relayouting. + Mon Feb 23 00:38:21 2004 Matthias Clasen Fix bug 134982, reported by Morten Welinder: diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 29e65a00bd..3fde72f9b8 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +Mon Feb 23 01:56:09 2004 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add + notification, and avoid excessive relayouting. + Mon Feb 23 00:38:21 2004 Matthias Clasen Fix bug 134982, reported by Morten Welinder: diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 29e65a00bd..3fde72f9b8 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +Mon Feb 23 01:56:09 2004 Matthias Clasen + + * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): + * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add + notification, and avoid excessive relayouting. + Mon Feb 23 00:38:21 2004 Matthias Clasen Fix bug 134982, reported by Morten Welinder: diff --git a/gtk/gtkcombobox.c b/gtk/gtkcombobox.c index 5253e37097..4e22b247e3 100644 --- a/gtk/gtkcombobox.c +++ b/gtk/gtkcombobox.c @@ -2499,9 +2499,14 @@ gtk_combo_box_set_wrap_width (GtkComboBox *combo_box, g_return_if_fail (GTK_IS_COMBO_BOX (combo_box)); g_return_if_fail (width > 0); - combo_box->priv->wrap_width = width; - - gtk_combo_box_relayout (combo_box); + if (width != combo_box->priv->wrap_width) + { + combo_box->priv->wrap_width = width; + + gtk_combo_box_relayout (combo_box); + + g_object_notify (G_OBJECT (combo_box), "wrap_width"); + } } /** @@ -2526,9 +2531,14 @@ gtk_combo_box_set_row_span_column (GtkComboBox *combo_box, col = gtk_tree_model_get_n_columns (combo_box->priv->model); g_return_if_fail (row_span >= 0 && row_span < col); - combo_box->priv->row_column = row_span; - - gtk_combo_box_relayout (combo_box); + if (row_span != combo_box->priv->row_column) + { + combo_box->priv->row_column = row_span; + + gtk_combo_box_relayout (combo_box); + + g_object_notify (G_OBJECT (combo_box), "row_span_column"); + } } /** @@ -2553,9 +2563,14 @@ gtk_combo_box_set_column_span_column (GtkComboBox *combo_box, col = gtk_tree_model_get_n_columns (combo_box->priv->model); g_return_if_fail (column_span >= 0 && column_span < col); - combo_box->priv->col_column = column_span; + if (column_span != combo_box->priv->col_column) + { + combo_box->priv->col_column = column_span; + + gtk_combo_box_relayout (combo_box); - gtk_combo_box_relayout (combo_box); + g_object_notify (G_OBJECT (combo_box), "column_span_column"); + } } /** -- 2.30.2